The disclosures herein relate generally to computer systems, and more particularly, to a method and apparatus for automatic reduction of data noise in re-engineered software installation packages used in the manufacture of build-to-order computer systems.
Software re-engineering of third party software package installations support a build-to-order computer manufacturing process. Generally, a vendor (i.e., third party) software package, a customer""s custom installation, or some other configuration change is designated for installation in the computer build-to-order manufacturing process. A configuration change includes a more general form of change, whereas, a software product install is more specific. Such a vendor software package, customer""s custom installation, or other configuration change comprise an xe2x80x9cAs Delivered Package.xe2x80x9d The As Delivered Package is processed and prepared via software re-engineering for uploading onto a manufacturing server. Once on the manufacturing server, the re-engineered installation is available for downloading onto target computer systems being manufactured.
Re-engineering of software installations to be installed on computer systems in a build-to-order manufacturing environment can be accomplished via state change comparison. State change comparison is a technique that includes several steps. First, query the state of each relevant configuration entity in a given computer system environment prior to making a prescribed configuration change. Such an entity may include a registry, files, INIs, services, etc. Next, the configuration change is installed on the given computer system being manufactured. Query the state of each configuration entity in the given computer system environment a second time. Compare the results of the first and second queries and determine what changes, if any, to the computer system were caused by the configuration change. Lastly, use the change information to be able to reproduce the installation on computer systems in the build-to-order computer system manufacturing process.
The change information obtained using the method described above includes a first category of changes in the computer system that should not be performed in reproducing the installation with respect to another computer system being manufactured. Accordingly, the first category of changes are changes which the configuration change or product""s installation did not explicitly cause. For instance, such changes in the first category include changes caused by a rebooting of the computer system being manufactured. Other changes may include changes occurring due to various adapters initializing, providing performance data, rerouting, etc. Still further, such changes may occur in response to installation information set up by a third party vendor install program for connecting to a particular hardware device or component. The particular hardware device or component may not exist on a computer system being manufactured for which the installation is downloaded.
Accordingly, a problem occurs when the changes, such as those of the first category, are applied to another computer system being manufactured which is different from the computer system used in establishing the change information. The subsequently manufactured computer system may or may not include the same components (i.e., hardware or software) as a previously manufactured computer system. Applying the changes may undesirably corrupt a subsequently manufactured computer system. Changes may also refer to hardware, software, or dynamic data (e.g., a time stamp) changes that are not the same on the subsequently manufactured computer system. Such undesired changes are referred to herein as noise. Noise can occur anywhere in the build-to-order manufacturing environment. There are no set locations for such an occurrence of noise.
Prior methods for addressing the above problem of data noise in installation packages have included automatically processing a list of entities which are normally considered noise. Each item of noise in the list is erased from an installation package prior to its installation on the target system. However, this causes an additional problem, in that, sometimes the information which gets erased may actually be needed for a given computer system. Manufacturing engineers are then required to individually identify and erase any noise entities not in the automatically processed list or to replace any incorrect erasures.
An improved method and apparatus for handling noise generated as a result of a re-engineered installation of software products in the manufacturing of build-to-order computer systems is thus needed.
According to the embodiments disclosed herein, in a method for reduction of data noise in installation packages for a computer system, a first change list is established based upon a set of differences resulting from installation of a configuration change or a vendor product on a first computer system. A second change list is established based upon a set of differences resulting from installation of the configuration change or vendor product on a second computer system. The first change list is compared with the second change list to produce a resultant change list including an intersecting set of changes. The intersecting set includes common changes between installations on the first computer system and the second computer system, accordingly filtering out of randomly generated installation noise.
A principal advantage of this embodiment is that random noise is significantly reduced in a re-engineered installation of software products in the manufacturing of build-to-order computer systems. An improved method and apparatus for handling noise generated as a result of installation of vendor products in the manufacturing of build-to-order computer systems is provided.